RESTful API
https://gyazo.com/83d78c18941ad8aea9833cc4c0bb7ff6
RESTful API REST API
Web Standardsの一つ
Webシステムを外部から利用するためのプログラムの呼び出し規約(API)の種類の一つ
RESTと呼ばれる設計原則に従って策定されたもの
RESTそのものは適用範囲の広い抽象的なモデル
しかし、一般的にはRESTの考え方をWeb APIに適用したものをRESTful APIと呼ぶ
特徴
URL Uniform Resource Locators/URIですべてのリソースを一意に識別
セッション管理や状態管理などを行わないステートレス
同じURLに対する呼び出しには常に同じ結果が返されること
ソースの操作
Input:HTTP Hypertext Transfer Protocolメソッドによって指定(取得ならGETメソッド、書き込みならPOSTメソッド)
Output:XMLやHTML HyperText Markup Language、JSON JavaScript Object Notation
処理結果
HTTPステータスコードで通知
404とか
RESTとは
REpresentational State Transfer
分散型システムにおける複数のソフトウェアを連携させるのに適した設計原則の集合、考え方
GETとPOSTの使い分け
データ更新などの副作用を伴うリクエスト
秘密情報を送信
送信データの総量が大きい
課題
過剰な取得
過小な取得
Endpoint エンドポイントの管理
client クライアントに変更が加わると、新しいエンドポイント作成必要
クライアント側とサーバー側で計画、話し合い必要
デザインパターン
Best practices for REST API design - Stack Overflow Blog
Web API The Good Parts
参考記事
RESTful APIとは何なのか
0からREST APIについて調べてみた